<?php namespace Admin\Controller; 
//分类管理控制器
class CateController extends CommonController{
    private $model;
//  自定义构造函数
    public function __auto(){
        //引Model文件
        $this->model = new \Common\Model\Cate;
    } 
    
//  分类首页
    public function index(){
    	
//  	p(Q("post."));
		$cateData = $this->model->orderBy('sort','ASC')->get();
		if(!$cateData) View::error('你还没有添加分类，请先添加分类',U('add'));
//		树状图分类
		$cateData = Data::tree($cateData,'cname','cid','pid');
		
		//排序
		if(IS_POST){
//			p(Q("post."));exit;
			foreach (Q('post.') as $k => $v) {
				$this->model->where("cid={$k}")->save(array('sort'=>$v));	
			}
			View::success('修改成功',U('index'));
		}
//		p($cateData);
		View::with('cateData',$cateData);
        View::make();
    }
    
//  顶级分类  添加
    public function add(){
    	if(IS_POST){
    		if(!$this->model->store()) View::error($this->model->getError());
			View::success('添加成功',U('Cate/index'));
    	}
        View::make();
    }
//  编辑
    public function edit(){
//  	2.修改数据
		if(IS_POST){
//			p(Q("post."));exit;
			if($this->model->edit()) View::success("修改成功",U('index'));
			View::error($this->model->getError());
		}
		$typeModel = new \Common\Model\Type;
		$typeData = $typeModel->get();
//		p($typeData);
		View::with('typeData',$typeData);
		
//		1.获得旧数据
		$cid = Q("get.cid",0,'intval');
		$oldData = $this->model->where("cid={$cid}")->find();
//		p($oldData);
		View::with('oldData',$oldData);
        View::make();
    }
//  删除 判断是否存在子类
    public function del(){
    	$cid = Q("get.cid",0,'intval');
        $data = $this->model->where("pid={$cid}")->get();
//		p($data);
		if($data) View::error('该分类下面还有子类,请先删除子分类!');
		$this->model->where("cid={$cid}")->DELETE();
		View::success("删除成功");
    }
	
	
//	添加子分类---
	public function addSon(){
		if(IS_POST){
			if($this->model->store()) View::success("添加成功",U('index'));
			View::error($this->model->getError());
		}
		$typeDate = new \Common\Model\Type;
//		获得GET传参cid数据信息 (intval转为整型)
		$cid = Q('get.cid',0,'intval');

		$type = $typeDate->get();
//		p($type);
		View::with('type',$type);
		//分配变量
	    View::make();
	}
	

}